package com.ktwlsoft.archivemanage.domain.dao.entity.businessInspect;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import java.io.Serializable;
import lombok.Data;
import java.util.Date;

/**
 * business_inspect_randomizing--业务检查随机抽取
 * @author zhuhe 2023-06-25
 */
@Data
@ApiModel
public class BusinessInspectRandomizing implements Serializable {

    private static final long serialVersionUID = 1L;

    public enum businessType {
        /**人员*/
        PERSONNEL,
        /**单位*/
        UNIT
    }

    /**
     * 主键
     */
    @ApiModelProperty("主键")
    @NotNull(message = "主键不能为空")
    private Long id;

    /**
     * 业务id
     */
    @ApiModelProperty("业务id")
    @NotNull(message = "业务id不能为空")
    private Long businessId;

    /**
     * 业务名称
     */
    @ApiModelProperty("业务名称")
    @NotNull(message = "业务名称不能为空")
    @Size(max = 100,message = "业务名称超长")
    private String businessName;

    /**
     * 业务类型
     */
    @ApiModelProperty("业务类型:PERSONNEL(人员),UNIT(单位)")
    @NotNull(message = "业务类型不能为空")
    @Size(max = 100,message = "业务类型超长")
    private businessType businessType;

    /**
     * 业务描述
     */
    @ApiModelProperty("业务描述")
    @NotNull(message = "业务描述不能为空")
    @Size(max = 100,message = "业务描述超长")
    private String businessDesc;

    /**
     * 关联对象id
     */
    @ApiModelProperty("关联对象id")
    private Long objectId;

    /**
     * 关联对象名称
     */
    @ApiModelProperty("关联对象名称")
    @Size(max = 100,message = "关联对象名称超长")
    private String objectName;

    /**
     * 创建人
     */
    @ApiModelProperty("创建人")
    @Size(max = 30,message = "创建人超长")
    private String creator;

    /**
     * 创建人Id
     */
    @ApiModelProperty("创建人Id")
    private Long creatorId;

    /**
     * 创建日期
     */
    @ApiModelProperty("创建日期")
    @NotNull(message = "创建日期不能为空")
    private Date createdAt;

    /**
     * 更新时间
     */
    @ApiModelProperty("更新时间")
    private Date updateAt;

    /**
     * 更新人id
     */
    @ApiModelProperty("更新人id")
    private Long updateId;

    /**
     * 更新人
     */
    @ApiModelProperty("更新人")
    @Size(max = 30,message = "更新人超长")
    private String updateKey;
}